/*
  高阶函数-函数作为返回值
*/

// function makeFn() {
//   const msg = 'Hello function'
//   return function () {
//     console.log(msg)
//   }
// }

// const fn = makeFn()
// fn()

// once
function once(fn) {
  let done = false
  return function () {
    if (!done) {
      return fn.apply(this, arguments)
    }
  }
}

const pay = once(function (money) {
  console.log(`支付了 ${money} RMB`)
})

pay(103)
